home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 23 / Amiga Format AFCD23 (Feb 1998, Issue 107).iso / -coverdisks- / af107a / m2i5_73 / installm2i < prev    next >
Text File  |  1997-12-10  |  12KB  |  612 lines

  1. ; M2I 5.73 Installer Script
  2. ; $VER: 5.73 (18-Nov-97)
  3. ; Written by Thomas PIMMEL
  4.  
  5. (set #welcome-message
  6. (cat "\nM2I 5.73 (c) Thomas PIMMEL 1991-1997"))
  7.  
  8. (set @default-dest "SYS:")
  9.  
  10.  
  11. (if (= @language "français")
  12.  (
  13.     (set #wrongversion
  14.     (cat    "Vous utilisez une vieille version du programme 'Installer'"
  15.         "\n\n Ce script a besoin de l'Installer 42.9 (minimum),\n\n"
  16.         "disponible sur Aminet (ftp.wustl.edu)"))
  17.  
  18.     (set #bad-kick
  19.     (cat    "\n\nDésolé! Vous devez avoir le Workbench 3.0 ou "
  20.         "plus pour utiliser M2I."))
  21.  
  22.     (set #hello-message
  23.     (cat    "\n\nUne version de M2I tourne dans votre système.\n"
  24.         "Ce script peut remettre à jour votre "
  25.         "ancienne version, ou pour compléter votre installation.\n\n"
  26.         "Par rapport à la version 5.51 :\n"
  27.         "Cette nouvelle version offre de nouvelles fonctions comme "
  28.         "la transparence des icônes, le 'remap' des images, "
  29.         "les boutons, le colonnage des icônes et de très nombreuses "
  30.         "autres améliorations.\n\n"))
  31.  
  32.     (set #install-which
  33.     (cat    "\nQuelle(s) partie(s) de M2I voulez-vous installer "
  34.             "sur votre disque dur?\n"))
  35.  
  36.     (set #install-c0 "Fichiers de base")
  37.     (set #install-c1 "Documentation")
  38.     (set #install-c3 "Préférences")
  39.     (set #install-c2 "Catalogue")
  40.     (set #install-c4 "Scripts AREXX")
  41.     (set #install-c5 "Motifs")
  42.     (set #install-c6 "Répertoire Extra")
  43.     (set #install-c7 "Reqtools.library")
  44.     (set #install-c8 "Menu de démonstration")
  45.  
  46.     (set #install-icons "\nChoisissez le type d'icônes que vous voulez installer :")
  47.  
  48.     (set #selectdir "\nChoisissez l'endroit où le répertoire M2I va être créé.")
  49.  
  50.     (set #copylib "M2I a besoin de la reqtools.library pour fonctionner.")
  51.  
  52.     (set #update-deficons
  53.     (cat    "\nLe script a détecté un répertoire DefIcons. Doit-il écraser "
  54.         "les icônes qui s'y trouvent?"))
  55.     (set #update-erase "Ecraser")
  56.     (set #update-skip "Passer cette partie")
  57.  
  58.     (set #askupdate-prefs
  59.     (cat    "\nLe script a détecté une ancienne version des préférences. "
  60.         "Doit-il mettre à jour ces préférences pour être lisibles "
  61.         "par la nouvelle version?"))
  62.         
  63.     (set #update-prefs "Mettre à jour")    
  64.  
  65.  )
  66.  (
  67.     (set #wrongversion
  68.     (cat    "Your 'Installer' version on your amiga is too old!\n\nYou need "
  69.         "at least 'Installer' V42.9, available on Aminet (ftp.wustl.edu)"))
  70.  
  71.     (set #bad-kick
  72.     (cat    "\n\nSorry, you need Workbench 3.0 or higher to run M2I."))
  73.  
  74.     (set #hello-message
  75.     (cat    "\n\nAn old version of M2I is running on your system.\n"
  76.         "This script can update your old version or complete your "
  77.         "installation.\n\n"
  78.         "Since version 5.51:\n"
  79.         "You have new features like icons transparency, pictures remap, "
  80.         "buttons, column storage of icons, and lots of other improvements.\n\n"))
  81.  
  82.     (set #install-which
  83.     (cat    "\nWhich parts of M2I would you like to install on your harddisk?\n"))
  84.  
  85.     (set #install-c0 "Program files")
  86.     (set #install-c1 "Documentation")
  87.     (set #install-c2 "Catalog")
  88.     (set #install-c3 "Preferences")
  89.     (set #install-c4 "AREXX Scripts")
  90.     (set #install-c5 "Brushes")
  91.     (set #install-c6 "Extra Drawer")
  92.     (set #install-c7 "Reqtools.library")
  93.     (set #install-c8 "Demo Menu")
  94.  
  95.     (set #install-icons "\nChoose the icon type you would like to install :")
  96.  
  97.     (set #selectdir "\nChoose the directory where the M2I drawer will be created.")
  98.  
  99.     (set #copylib "M2I needs reqtools.library to run.")
  100.  
  101.     (set #update-deficons
  102.     (cat    "\nThe script found a drawer DefIcons. Shall it overwrite the existing "
  103.         "icons in it?"))
  104.     (set #update-erase "Overwrite")
  105.     (set #update-skip "Skip this part")
  106.  
  107.     (set #askupdate-prefs
  108.     (cat    "\nThe script found an old preferences file. Shall it update these "
  109.         "preferences to be suitable for the new version?"))
  110.         
  111.     (set #update-prefs "Update")
  112.  
  113.  )
  114. )
  115.  
  116.  
  117. ; ------------------------------------
  118. ; Check Installer & Kickstart Version
  119. ; ------------------------------------
  120.  
  121. (if (< @installer-version 2752521)
  122.   (
  123.     (message #wrongversion (all))
  124.     (exit (quiet))
  125.   )
  126. )
  127.  
  128. (if (< (getversion "LIBS:version.library") (* 39 65536))
  129.         (abort #bad-kick)
  130. )
  131.  
  132. ; ------------------------------
  133. ; Check Old Vers.
  134. ; ------------------------------
  135.  
  136. (set M2IOn (run "Tools/M2IOn" (safe)))
  137.     (if    (= M2IOn 1)
  138.         (message #hello-message (all))
  139.     )
  140.  
  141.  
  142. (welcome #welcome-message)
  143.  
  144.  
  145. ; ------------------------------
  146. ; What should I install?
  147. ; ------------------------------
  148.  
  149. (complete 0)
  150. (set InstallOpt
  151.     (askoptions (prompt #install-which)
  152.             (help @askoptions-help)
  153.         (choices #install-c0 #install-c1 #install-c2 #install-c3
  154.         #install-c4 #install-c5 #install-c6 #install-c7 #install-c8)
  155.     )
  156. )
  157.  
  158. ; ------------------------------
  159. ; Icon Drawer
  160. ; ------------------------------
  161. (set IconOpt
  162.     (askchoice (prompt #install-icons)
  163.         (help @askchoice-help)
  164.         (choices "MagicWB" "NewIcons")
  165.     )
  166. )
  167.  
  168. (if (= IconOpt 0)
  169.  (
  170.      (set icondir "Icons/MagicWB")
  171.      (set iconextra "MagicExtra")
  172.  )        
  173.  (
  174.         (set icondir "Icons/NewIcons")
  175.         (set iconextra "NIExtra")
  176.  )
  177. )
  178.  
  179.  
  180. ; ------------------------------
  181. ; Where?
  182. ; ------------------------------
  183. (set destdir
  184.     (askdir
  185.     (prompt #selectdir)
  186.     (help @askdir-help)
  187.     (disk)
  188.     (default @default-dest)
  189.     )
  190. )
  191.  
  192. (set @default-dest destdir)
  193.  
  194. ; ------------------------------
  195. ; Create Drawer
  196. ; ------------------------------
  197.  
  198. (makedir (tackon destdir "M2I"))
  199.  
  200. ; ------------------------------
  201. ; Drawer Icon
  202. ; ------------------------------
  203. (copyfiles
  204.     (source (tackon icondir "defdrawer.info"))
  205.     (dest destdir)
  206.     (newname "M2I.info")
  207. )
  208.  
  209. (set destdir (tackon destdir "M2I"))
  210. (complete 1)
  211.  
  212. ; ------------------------------
  213. ; Programms
  214. ; ------------------------------
  215.  
  216. (if (BITAND InstallOpt 1)
  217. (
  218.     (copyfiles
  219.         (source (tackon icondir "M2I5.info"))
  220.         (dest destdir)
  221.     )
  222.  
  223.  
  224.  
  225.     (if    (OR (= (database "cpu") "68000")
  226.         (= (database "cpu") "68010"))
  227.  
  228. ;======== Copy 68000 Version
  229.     (
  230.         (copyfiles
  231.             (source "bin/M2I5_000")
  232.             (dest destdir)
  233.             (newname "M2I5")
  234.             (optional "force")
  235.  
  236.         )
  237.     )
  238. ;======== Copy 68020 Version
  239.     (
  240.         (copyfiles
  241.             (source "bin/M2I5_020")
  242.             (dest destdir)
  243.             (newname "M2I5")
  244.             (optional "force")
  245.         )
  246.     ))
  247.  
  248. ;======== DefIcons
  249.  
  250.  
  251.     (if (exists (tackon destdir "deficons"))
  252.         (
  253.         (if    (askbool
  254.                 (prompt #update-deficons)
  255.                 (help @askbool-help)
  256.                 (default 1)
  257.                 (choices #update-erase #update-skip)
  258.             )
  259.             (
  260.             (copyfiles
  261.                 (source icondir)
  262.                 (dest (tackon destdir "DefIcons"))
  263.                 (pattern "(def#?.info|gad#?.info)")
  264.             )
  265.             )
  266.         )
  267.          )
  268.          (
  269.         (copyfiles
  270.             (source icondir)
  271.             (dest (tackon destdir "DefIcons"))
  272.             (pattern "(def#?.info|gad#?.info)")
  273.         )
  274.         (copyfiles
  275.             (source (tackon icondir "defdrawer"))
  276.             (dest (tackon destdir "DefIcons"))
  277.         )
  278.          )
  279.     )
  280.  
  281.  
  282.  
  283.     (makedir (tackon destdir "DefIcons"))
  284.  
  285.     (delete (tackon destdir "deficons/iconify.??.info")
  286.         (optional "force")
  287.     )
  288.  
  289.     (copyfiles
  290.         (source (tackon icondir "defdrawer.info"))
  291.         (dest destdir)
  292.         (newname "DefIcons.info")
  293.     )
  294.  
  295.  
  296. ;======== M2IDefTexts
  297.  
  298.     (makedir (tackon destdir "Prefs"))
  299.  
  300.     (copyfiles
  301.         (source (tackon icondir "defdrawer.info"))
  302.         (dest destdir)
  303.         (newname "Prefs.info")
  304.     )
  305.  
  306.     (copyfiles
  307.         (source "Prefs/M2IDefTexts")
  308.         (dest (tackon destdir "Prefs"))
  309.         (optional "force")
  310.     )
  311.  
  312. ;======== Old version
  313.  
  314.     ;=== Update 5.51
  315.  
  316.     (if (exists (tackon destdir "prefs/M2I5.prefs") (noreq))
  317.     (
  318.       (if (askbool
  319.           (prompt #askupdate-prefs)
  320.           (help @askbool-prefs)
  321.           (default 1)
  322.           (choices #update-prefs #update-skip)
  323.           )
  324.  
  325.       (
  326.             (copyfiles
  327.                 (source "Tools/M2IConvertPrefs51")
  328.                 (dest destdir)
  329.             )
  330.             (run (tackon destdir "M2IConvertPrefs51"))
  331.             (delete (tackon destdir "M2IConvertPrefs51"))
  332.             (rename
  333.                 (tackon destdir "prefs/M2I5.prefs.info")
  334.                 (tackon destdir "prefs/M2I5DSP.prefs.info"))
  335.             (copyfiles
  336.                 (source (tackon icondir "defprefs.info"))
  337.                 (dest (tackon destdir "Prefs"))
  338.                 (newname "M2I5PENS.prefs.info")
  339.             )
  340.             (delete (tackon destdir "prefs/M2I5.prefs"))
  341.       ))
  342.  
  343.     ))
  344.  
  345.     ;=== Update 5.60
  346.     (copyfiles
  347.         (source "Tools/M2IConvertPrefs60")
  348.         (dest destdir)
  349.     )
  350.     (run (tackon destdir "M2IConvertPrefs60"))
  351.     (delete (tackon destdir "M2IConvertPrefs60"))
  352.  
  353.  
  354.     (rename
  355.         (tackon destdir "Prefs/M2ISND.prefs")
  356.         (tackon destdir "Prefs/M2I5SND.prefs")
  357.     )
  358.  
  359.     (rename
  360.         (tackon destdir "Prefs/M2IMISC.prefs")
  361.         (tackon destdir "Prefs/M2I5MISC.prefs")
  362.     )
  363. ))
  364.  
  365. (complete 20)
  366.  
  367. ; ------------------------------
  368. ; Documentation
  369. ; ------------------------------
  370. (if (= @language "français")
  371.  (
  372.     (set guidepat ".fr.guide")
  373.  )
  374.  (
  375.     (set guidepat ".eng.guide")
  376.  )
  377. )     
  378.  
  379.  
  380. (if (BITAND InstallOpt 2)
  381. (
  382.  
  383.     (makedir (tackon destdir "Guides"))
  384.  
  385.     (copyfiles
  386.         (source (tackon icondir "defdrawer.info"))
  387.         (dest destdir)
  388.         (newname "Guides.info")
  389.     )
  390.  
  391.     (copyfiles
  392.         (source "Guides")
  393.         (dest (tackon destdir "Guides"))
  394.         (pattern (cat "#?" guidepat))
  395.     )
  396.  
  397.     (copyfiles
  398.         (source (tackon icondir "guide.info"))
  399.         (dest (tackon destdir "Guides"))
  400.         (newname (cat "M2I" guidepat ".info"))
  401.     )
  402.  
  403.     (copyfiles
  404.         (source (tackon icondir "guide.info"))
  405.         (dest (tackon destdir "Guides"))
  406.         (newname (cat "M2IARexx" guidepat ".info"))
  407.     )
  408.  
  409.     (copyfiles
  410.         (source (tackon icondir "guide.info"))
  411.         (dest (tackon destdir "Guides"))
  412.         (newname (cat "M2IOnLine" guidepat ".info"))
  413.     )
  414.  
  415. ))
  416.  
  417. (complete 40)
  418.  
  419. ; ------------------------------
  420. ; Preferences
  421. ; ------------------------------
  422.  
  423. (if (BITAND InstallOpt 8)
  424. (
  425.  
  426.     (makedir (tackon destdir "Prefs"))
  427.  
  428.     (copyfiles
  429.         (source (tackon icondir "defdrawer.info"))
  430.         (dest destdir)
  431.         (newname "Prefs.info")
  432.     )
  433.  
  434.     (copyfiles
  435.         (source "Prefs")
  436.         (dest (tackon destdir "Prefs"))
  437.         (pattern "M2I5#?.prefs")
  438.     )
  439.  
  440.     (copyfiles
  441.         (source (tackon icondir "defprefs.info"))
  442.         (dest (tackon destdir "prefs"))
  443.         (newname "M2I5DSP.prefs.info")
  444.     )
  445.  
  446.     (copyfiles
  447.         (source (tackon icondir "defprefs.info"))
  448.         (dest (tackon destdir "prefs"))
  449.         (newname "M2I5PENS.prefs.info")
  450.     )
  451.  
  452.     (copyfiles
  453.         (source (tackon icondir "defprefs.info"))
  454.         (dest (tackon destdir "prefs"))
  455.         (newname "M2I5SND.prefs.info")
  456.     )
  457.  
  458.     (copyfiles
  459.         (source (tackon icondir "defprefs.info"))
  460.         (dest (tackon destdir "prefs"))
  461.         (newname "M2I5MISC.prefs.info")
  462.     )
  463.  
  464. ))
  465.  
  466. (complete 50)
  467.  
  468. ; ------------------------------
  469. ; Catalogs
  470. ; ------------------------------
  471.  
  472. (if (BITAND InstallOpt 4)
  473. (
  474.  
  475.     (makedir (tackon destdir "Catalogs"))
  476.  
  477.     (copyfiles
  478.         (source "Catalogs")
  479.         (dest (tackon destdir "Catalogs"))
  480.         (all)
  481.     )
  482.  
  483.     ; delete old
  484.     (delete "Locale:catalogs/français/M2I.catalog")
  485.  
  486. ))
  487.  
  488. (complete 60)
  489.  
  490. ; ------------------------------
  491. ; ARexx
  492. ; ------------------------------
  493.  
  494. (if (BITAND InstallOpt 16)
  495. (
  496.  
  497.     (makedir (tackon destdir "Rexx"))
  498.  
  499.     (copyfiles
  500.         (source (tackon icondir "defdrawer.info"))
  501.         (dest destdir)
  502.         (newname "Rexx.info")
  503.     )
  504.  
  505.  
  506.     (copyfiles
  507.         (source "Rexx")
  508.         (dest (tackon destdir "Rexx"))
  509.         (all)
  510.     )
  511.  
  512. ))
  513.  
  514. (complete 70)
  515.  
  516. ; ------------------------------
  517. ; Patterns
  518. ; ------------------------------
  519.  
  520. (if (BITAND InstallOpt 32)
  521. (
  522.  
  523.     (makedir (tackon destdir "Patterns"))
  524.  
  525.     (copyfiles
  526.         (source (tackon icondir "defdrawer.info"))
  527.         (dest destdir)
  528.         (newname "Patterns.info")
  529.     )
  530.  
  531.     (copyfiles
  532.         (source "Patterns")
  533.         (dest (tackon destdir "Patterns"))
  534.         (all)
  535.     )
  536.  
  537. ))
  538.  
  539. (complete 80)
  540.  
  541. ; ------------------------------
  542. ; Extra
  543. ; ------------------------------
  544.  
  545. (if (BITAND InstallOpt 64)
  546. (
  547.     (makedir (tackon destdir iconextra))
  548.  
  549.     (copyfiles
  550.         (source (tackon icondir "defdrawer.info"))
  551.         (dest destdir)
  552.         (newname (cat iconextra ".info"))
  553.     )
  554.  
  555.     (copyfiles
  556.         (source iconextra)
  557.         (dest (tackon destdir iconextra))
  558.         (all)
  559.     )
  560. ))
  561.  
  562. (complete 90)
  563.  
  564.  
  565. ; ------------------------------
  566. ; ReqTools
  567. ; ------------------------------
  568.  
  569. (if (BITAND InstallOpt 128)
  570. (
  571.     (copylib
  572.         (prompt #copylib)
  573.         (help @copylib-help)
  574.         (source "libs/reqtools.library")
  575.         (dest "libs:")
  576.         (confirm)
  577.     )
  578. ))
  579.  
  580. (complete 95)
  581.  
  582. ; ------------------------------
  583. ; Demo File
  584. ; ------------------------------
  585.  
  586. (if (BITAND InstallOpt 256)
  587. (
  588.     (copyfiles
  589.         (source "Tools/Demo.M2I")
  590.         (dest destdir)
  591.     )
  592.  
  593.     (copyfiles
  594.         (source (tackon icondir "defproject.info"))
  595.         (dest destdir)
  596.         (newname "Demo.M2I.info")
  597.     )
  598.  
  599.     (copyfiles
  600.         (source "Tools/Demo.readme")
  601.         (dest destdir)
  602.     )
  603.  
  604.     (copyfiles
  605.         (source "ReadMeFirst!.info")
  606.         (dest destdir)
  607.         (newname "Demo.readme.info")
  608.     )
  609. ))
  610.  
  611. (complete 100)
  612.